//
//  UIViewController+Statistical.h
//  Router
//
//  Created by DongSen on 2019/1/8.
//  Copyright © 2019年 董森森. All rights reserved.
//

#import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

typedef void(^CallBack)(id model);

@interface UIViewController (Statistical)

@property(nonatomic,strong)id ds_object;

@property(nonatomic,copy)CallBack ds_block;

/**
 push跳转路由器
 
 @param name 页面名
 @param object 需要传对象
 @param block 回调
 @param animation 是否使用动画
 */
- (void)pushTo:(NSString*)name withObject:(id)object callBack:(void(^)(id model))block animation:(BOOL)animation;

/**
 pop跳转路由器
 
 @param name 页面名
 @param object 需要传对象
 @param block 回调
 @param animation 是否使用动画
 */
- (void)popTo:(NSString*)name withObject:(id)object callBack:(void(^)(id model))block animation:(BOOL)animation;

/**
 present跳转路由器
 
 @param name 页面名
 @param object 需要传对象
 @param block 回调
 @param animation 是否使用动画
 */
- (void)presentTo:(NSString*)name withObject:(id)object callBack:(void(^)(id model))block animation:(BOOL)animation;

@end
////获取回调对象
//static inline CallBack VcCallBack(UIViewController * view);
//CallBack VcCallBack(UIViewController * view){
//    CallBack back  = view.ds_block;
//    return back;
//}
//
////获取Model对象
//static inline id  VcModel(UIViewController * view);
//id VcModel(UIViewController * view){
//    id model  = view.ds_object;
//    return model;
//}

NS_ASSUME_NONNULL_END
